package cn.iocoder.yudao.module.crm.controller.admin.module.vo.customerlimit;

import com.mzt.logapi.starter.annotation.DiffLogField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.List;

@Schema(description = "管理后台 - 客户限制配置创建/更新 Request VO")
@Data
public class CrmModuleCustomerLimitSaveReqVO {

    @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "27930")
    private Long id;

    @Schema(description = "规则状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotNull(message = "规则状态不能为空")
    @DiffLogField(name = "规则状态")
    private Integer status;

    @Schema(description = "规则类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotNull(message = "规则类型不能为空")
    @DiffLogField(name = "规则类型")
    private Integer type;

    @Schema(description = "规则类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotNull(message = "规则类型不能为空")
    @DiffLogField(name = "规则类型")
    private Integer subType;

    @Schema(description = "配置内容")
    private List<CrmModuleCustomerLimitRespVO.CustomerLimitVO> configList;

    @Schema(description = "所属模块", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "所属模块不能为空")
    private Long moduleId;

}
